c#中无法将"int "类型隐式转换为"string"

来源:百度知道 编辑:UC知道 时间:2024/06/20 11:33:08
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace SynthesisApplication
{
class Program
{
bool myBool = false;
static void Main(string[] args)
{
//获取用户输入的姓名
Console.WriteLine("请输入姓名:");
Console.WriteLine("(1)张三(2)李四(3)王五");
string myName = Console.ReadLine().Trim();

//获取用户输入的密码
Console.WriteLine("请输入密码:");
string myPassword = Console.ReadLine().Trim();

do
{
//根据用户的输入,提示不同的信息
switch(myName)
{
//当myName等于1时的处理
case 1:
if(myPassword =="123456")
{
Console.WriteLine("密码正确");
}
else

确实是那样,你case那不能直接用整型的,因为你switch那用的变量是字符串的 

所以case那也要用string 

对于你这的,你是不是直接用输入的姓名来判断密码是否正确? 

那你也可以这样, 

int myName = Int32.Parse(Console.ReadLine()); 

其他不变,直接输入数字看看 

不行,你程序有严重的问题···我直接给你修改了,你自己看看 

using System; 

using System.Collections.Generic; 

using System.Collections; 

using System.Linq; 

using System.Text; 

namespace Temp 

class Program 

static void Main(string[] args) 

bool myBool = false; 

do 

//获取用户输入的姓名 

Console.WriteLine("请输入姓名:"); 

Console.WriteLine("(1)张三(2)李四(3)王五"); 

int myName = Int32.Parse(Console.ReadLine()); 

//获取用户输入的密码 

Console.WriteLine("请输入密码:");&